<?php

/**
 * Блок данных статической страницы.
 *
 */
class Static_Block_Contents extends Kernel_Block 
{

    /**
     * Идентификатор страницы, содержимое которой нужно вернуть.
     *
     * @var integer
     */
    public $id;

    /**
     * Возвращает данные шаблона для формирования блока
     *
     * @return  mixed
     */
    public function getData() 
    {
        $query = 'SELECT
                         `title`,
                         `contents`
                    FROM
                         `' . __postfix('system_contents') . '`
                   WHERE
                         `id` = ' . (int)$this->id;

        // если контент не найден, бросаем ошибку, иначе запаришься такое
        // отлаживать
        if (!is_array($row = database::fetchRow($query))) {
            trigger_error('Specified contents (ID = ' . var_export($this->id, true) . ') not found', E_USER_ERROR);
        }
        
        // также выносим заголовок страницы во внешний шаблон
        Application::getResponse()->setTitle($row['title']);
        return $row;
    }
    
}
